package com.qianxun;

import com.qianxun.init.context.SpringBeanTool;
import lombok.extern.slf4j.Slf4j;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration;
import org.springframework.boot.web.servlet.ServletComponentScan;
import org.springframework.cache.annotation.EnableCaching;
import org.springframework.context.ConfigurableApplicationContext;
import org.springframework.context.annotation.EnableAspectJAutoProxy;

import java.io.IOException;


/**
 * 启动类
 *
 * @author: huwei
 * @date: 2019/12/30 10:56
 * @version: 1.0.0
 */
@Slf4j
@EnableCaching
@ServletComponentScan
@SpringBootApplication
@EnableAutoConfiguration(exclude = {DataSourceAutoConfiguration.class})
@EnableAspectJAutoProxy(proxyTargetClass = true, exposeProxy = true)
public class ApplicationServiceStarter {

    public static void main(String[] args) throws IOException {
        ConfigurableApplicationContext applicationContext = SpringApplication.run(ApplicationServiceStarter.class, args);
        log.info(ApplicationServiceStarter.class.getSimpleName().concat(" started successfully..."));
        SpringBeanTool.setApplicationContext(applicationContext);

    }
}

